/**
 * 仿JSON内置API parse方法
 * @param {String} javaData JSON数据格式
 * @returns webObj
 */

function parse(javaData)
{
    // let javaData = '{"num":"凯文杜小帅", "age": "33"}'
    let webObj = {}
    // 1.1 过滤字符串（注：去掉{、}、"、空格） uname:凯文杜小帅,age:33
    javaData = javaData.replace(/{|}|"|\s/g, '')
    // 1.2 按,分割转数组       ['uname:凯文杜小帅', 'age:33']
    let javaDataArr = javaData.split(',')
    // 1.3 遍历数组
    javaDataArr.forEach(item => {
        // 1.3.1 按:分割转数组     
        let temp = item.split(':')
        // 1.3.2 数组的第一个值就是键，数组的第二个值就是值
        let key = temp[0]
        let val = temp[1] 
        // 1.3.3 将数据放到空对象中
        // webObj.键 = 值
        // webObj.key = val  // 当对象得键是变量时，用数组语法
        webObj[key] = val
    })
    // console.log(webObj);
    return webObj
}


/**
 * 仿JSON内置API stringify方法
 * @param {Object} webObj JS标准普通对象
 * @returns String
 */

function stringify(webObj)
{
    let arr = []
    // 1 遍历对象
    for (let key in webObj)
    {
        // 2 遍历外面-定义空数组arr
        // 3 遍历里面-将  键拼接:拼接值 push到数组中
        // 4 遍历结束-将数组转字符串即可
        let temp = `"${key}":"${webObj[key]}"`
        
        arr.push(temp)
    }
    return `{${arr.join(',')}}`
}
